Skip to content

macOS Framework search should only parse the "Current" framework #2046

@jamesrburgess

Description

@jamesrburgess

I'm using the latest vs code (Version 1.23.1 (1.23.1)) on macOS 10.12. Intellisense is finding header files in arbitrary frameworks inside /Library/Frameworks before includePath which is not how compilers work on macOS.

There are then two problems here:

  • Paths in includePath come after macFrameworkPath which is the reverse in macOS compilers
  • Arbitrary frameworks are searched in /Library/Frameworks which is unexpected/undesirable

Steps to reproduce

  • make a free empty workspace folder
  • pick an arbitrary framework in /Library and a header file therein (example QtCore/QObject)
  • make another header file of the same name (QObject) in some other folder (/Users/me/bar/QtCore/QObject)
  • add that folder to includePath (/Users/me/bar)
  • make a .cpp file in the workspace that includes that file with #include "QtCore/QObject"
  • observe that the framework version gets parsed not the bar/QtCore/QObject as expected.

I happen to have an Application called Houdini installed I would not expect this location to be searched:

/Library/Frameworks/Houdini.framework/Versions/15.5.717/Resources/toolkit/include/QtCore

Unless I specifically added that framework into my properties.json.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Feature: ConfigurationAn issue related to configuring the extension or IntelliSenseLanguage ServicebugfixedCheck the Milestone for the release in which the fix is or will be available.quick fix

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions